- 语义特性( Class : Semantic ) HTML 5 赋予网页更好的意义和结构。更加丰富的标签将随着对 RDFa 的微数据与微格式等方面的支持,构建对程序、对用户都更有价值的数据驱动的 Web
- 本地存储特性( Class : OFFLINE & STORAGE ) 基于 HTML 5 开发的网页 APP 拥有更短的启动时间,更快的连网速度,这些全得益于 HTML 5 APP Cache ,以及本地存储功能—— Indexed DB ( HTML 5 本地存储最重要的技术之一)和 API 说明文档
- 设备兼容特性( Class : DEVICE ACCESS ) 从 Geolocation 功能的 API 文档公开以来, HTML 5 为网页应用开发者们提供了更多功能上的优化选择,带来了更多体验功能的优势。HTML 5 提供了前所未有的数据与应用接入开放接口,使外部应用可以直接与浏览器内部的数据相连,例如视频影音可直接与麦克风及摄像头相连
- 连接特性( Class : CONNECTIVITY ) 更高的连接工作效率,使得基于页面的实时聊天、更快速的网页游戏体验、更优化的在线交流得到了实现。 HTML 5 拥有更有效的服务器推送技术, Server-Sent Event 和 WebSockets 就是其中的两个特性,这两个特性能够帮助我们实现服务器将数据"推送"到客户端的功能。
- 网页多媒体特性( Class : MULTIMEDIA ) 支持网页端的 Audio 、 Video 等多媒体功能,与网站自带的 APPS 、摄像头、影音功能相得益彰。
- 三维、图形及特效特性( Class : 3D 、 Graphics & Effects ) 基于 SVG 、 Canvas 、 WebGL 及 CSS3 的 3D 功能,用户会惊叹于在浏览器中所呈现的惊人的视觉效果。
- 性能与集成特性( Class : Performance & Integration ) 没有用户会永远等待你的 Loading —— HTML 5 会通过 XMLHttpRequest2 等技术,解决以前的跨域等问题,帮助您的 Web 应用和网站在多样化的环境中更快速地工作
- CSS 3 特性( Class : CSS3 ) 在不牺牲性能和语义结构的前提下, CSS3 中提供了更多的风格和更强的效果。此外,较之以前的 Web 排版, Web 的开放字体格式( WOFF )也提供了更高的灵活性和控制性。 声明不是 HTML 标签,它是指示浏览器该页面使用哪个 HTML 版本进行编写的指令。声明引用 DTD , DTD 规定了标记语言的规则,这样浏览器才能正确地呈现内容。 DTD ( Document Type Definition )即文档类型定义
- 避免不必要的复杂性
- 支持已有的内容
- 解决现实的问题
- 求真务实
- 平稳退化
- 最终用户优先
预先获取资源类等同于页面资源预加载( Link prefetch ),这是浏览器提供的一个技巧,目的是让浏览器在空闲时间下载或预读取一些文档资源,用户可以在后续操作中访问这些资源。一个 Web
页面可以对浏览器设置一系列的预加载指示,当浏览器加载完当前页面后,它会在后台静悄悄地加载指定的文档,并把它们存储在缓存里。当用户访问到这些预加载的文档后,浏览器能快速地从缓存里提取给用户。简单说来,就是让浏览器预先加载用户访问当前页后极有可能访问的其它资源,如页面、图片、视频等。
该 HTML 5 页面资源预加载 / 预读取( Link prefetch )功能是通过 link 标记实现的,将 rel 属性指定为 prefetch ,在 href 属性里指定要加载资源的地址。
注意:预加载( Link prefetch )不能跨域工作,包括跨域 Cookies 。并且预加载( Link prefetch )有可能导致网站访问量统计不准确,因为有些预加载到浏览器的页面用户可能并未真正访问。
虽然预加载( Link prefetch )略有缺憾,但是为了提升用户体验,仍然很值得尝试。
- 兼容性 考虑到互联网上 HTML 文档已经存在二十多年了,因此支持所有现存 HTML 文档是非常重要的。 HTML5 不是颠覆性的革新,它的核心理念就是要保持与过去技术的兼容和过渡。一旦浏览器不支持 HTML5 的某项功能,针对该功能的备选行为就会悄悄运行
- 合理性 HTML5 新增加的元素都是对现有网页和用户习惯进行跟踪、分析和概括而推出的。
- 效率 HTML5 规范是基于用户优先准则编写的,其宗旨是用户即上帝,这意味着在遇到无法解决的冲突时,规范会把用户放到第一位,其次是页面作者,再次是实现者(或浏览器),接着是规范制定者( W3C/WHATWG ),最后才考虑理论的纯粹性。因此, HTML5 的绝大部分是实用的,只是在有些情况下还不够完美
- 安全性 为保证安全性, HTML5 规范中引入了一种新的基于来源的安全模型,该模型不仅易用,而且各种不同的 API 都可通用。这个安全模型可以不需要借助于任何所谓聪明、有创意却不安全的 hack 就能跨域进行安全对话
- 分离 在清晰分离表现与内容方面, HTML5 迈出了很大一步。 HTML5 在所有可能的地方都努力进行了分离,包括 HTML 和 CSS 。实际上, HTML5 规范已经不支持老版本 HTML 的大部分表现功能了
- 简化 HTML5 要的就是简单,避免不必要的复杂性
- 以浏览器原生能力替代复杂的 JavaScript 代码
- 简化的 DOCTYPE
- 简化的字符集声明
- 简单而强大的 HTML5 API
- 通用性 通用访问的原则可以分成 3 个概念
- 可访问性:出于对残障用户的考虑, HTML5 与 WAI ( Web 可访问性倡议)和 ARIA (可访问的富 Internet 应用)做到了紧密结合, WAI-ARIA 中以屏幕阅读器为基础的元素已经被添加到 HTML 中
- 媒体中立:如果可能的话, HTML5 的功能在所有不同的设备和平台上应该都能正常运行
- 支持所有语种:如新的
<ruby>
元素支持在东亚页面排版中会用到的 Ruby 注释 - 无插件 在传统 Web 应用中,很多功能只能通过插件或者复杂的 hack 来实现,但在 HTML5 中提供了对这些功能的原生支持。插件的方式存在很多问题
- 插件安装可能失败
- 插件可以被禁用或屏蔽(如 Flash 插件)
- 插件自身会成为被攻击的对象
- 插件不容易与 HTML 文档的其它部分集成,因为存在插件边界、剪裁和透明度问题
- [WHATWG] :由来自 Apple 、 Mozilla 、 Google 和 Opera 等浏览器厂商的人员组成,成立于 2004 年。 [WHATWG] 开发 HTML 和 Web 应用 API
,同时为各浏览器厂商以及其它有意向的组织提供开放式合作
- W3C : W3C 下辖的 HTML 工作组,目前负责发布 HTML5 规范
- IETF (因特网工程任务组):这个任务组下辖 HTTP 等,是负责开发 Internet 协议的团队。 HTML5 定义的一种新 API ( WebSocket API )所依赖的 WebSocket 协议,正由
IETF 工作组负责开发